package com.zyf.project.kvdb.wal.walinf;

import java.io.Serializable;

/**
 * <h1>WAL 数据编码器</h1>
 * @author Zhou Yifan
 */
public interface WalDataCoder<E extends Serializable> {

    /**
     * 数据编码
     *
     * @param data 待处理数据
     * @return byte[] 字节码
     */
    byte[] encode(E data);

    /**
     * 数据解码
     *
     * @param data byte[] 待处理数据的字节码
     * @return 对应的数据
     */
    E decode(byte[] data);

}
